project "DM"
    kind "StaticLib"
    language "C++"
    cppdialect "C++17"
    staticruntime "on"

    targetdir ("%{wks.location}/build/target/" .. outputdir .. "/%{prj.name}")
    objdir ("%{wks.location}/build/obj/" .. outputdir .. "/%{prj.name}")

    pchheader "dmpch.h"
    pchsource "src/dmpch.cpp"

    files
    {
        "src/**.h",
        "src/**.cpp"
    }

    includedirs
    {
        "src",
        "%{IncludeDir.GLFW}",
        "%{IncludeDir.GLAD}",
        "%{IncludeDir.IMGUI}",
        "%{IncludeDir.STATIC_INCLUDE}"
    }

    links
	{
		"GLFW",
		"Glad",
		"ImGui"
	}

    filter "system:windows"
        systemversion "latest"

        defines
        {			
            "DM_PLATFORM_WINDOWS"
        }

    filter "configurations:Debug"
        defines "DM_DEBUG"
        runtime "Debug"
        symbols "on"

    filter "configurations:Release"
        defines "DM_RELEASE"
        runtime "Release"
        optimize "on"